#pragma once
#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
typedef int SListNodeType;
typedef struct SListNode
{
	SListNodeType data;
	SListNodeType* next;
}SLNode;

void SLNodePrint(SLNode* phead);

SLNode* BuySLNode(SListNodeType x);

void SLNodePushFront(SLNode* pphead, SListNodeType x);

void SLNodePushBack(SLNode** pphead, SListNodeType x);

void SLNodePopBack(SLNode** pphead);

void SLNodePopFront(SLNode** pphead);

void SListDestory(SLNode** pphead);

SLNode* SListFind(SLNode* phead, SListNodeType x);

void SListInsert(SLNode** pphead, SLNode* pos, SListNodeType x);

void SListInsertAfter(SLNode* pos, SListNodeType x);